#ifndef SPRITE_H
#define SPRITE_H

#include <vector>
using namespace std;

class Module;
class Texture;

class Sprite
{
private:
	vector<Module*> modules;
	float renderTime;

public:
	Sprite();
	Sprite(float renderTime);
	Sprite(int x, int y, int width, int height, Texture* texture, float renderTime);

	void AddModule(Module* module);
	void RemoveModule(int index);

	void Render(int x, int y, float deep);
	void Render(int x, int y, float alpha, float deep);
	void Render(int x, int y, float xScale, float yScale, float angle, float alpha,float deep);

	~Sprite();

	float GetRenderTime(){return renderTime;}
};

#endif